#不限次数输入，选择3退出
#1、注册
#    如果有这个用户了，就不用再注册
#    name_dict = {"root":{"age":18,"passwd":"123456"},
#                 "admin":{"age":19, "passwd":"admin123"}}
#   输入用户名、年龄、密码
#
#2、查询
#   输入要查询的姓名，展示这个人的详细信息
#3、退出
#后续考虑：写入文件
#json库

import json
option = input("请输入（1注册，2查询，3退出）：")
name_dict = {"root": {"age": 18, "passwd": "123456"}, "admin": {"age": 19, "passwd": "admin123"}}
#读取JSON文件的内容
# with open('name_dict.json') as f:
#     name_dict = json.load(f)
# print(name_dict)
while option != "3":
    if option == "1":
        username = input("请输入用户名：")
        for i in name_dict:
            if username == i:
                print("用户已存在，无法注册")
                break
        else:
            age = input("请输入年龄：")
            password = input("请输入密码：")
            name_dict[username] = {
                "age": age,
                "passwd": password
            }
            #不分行写入文件
            # json_str = json.dumps(name_dict)
            # with open("name_dict.json", 'w') as f:
            #     f.write(json_str)
            #分行写入文件
            count = 0
            with open('name_dict.json', 'w') as f:
                f.write('{')  # 这样子字典没有自动的大括号要自己加
                for key in name_dict:
                    f.write('\n')
                    f.writelines(json.dumps(key) + ":" + json.dumps(name_dict[key]))
                    count += 1
                    if count != len(name_dict):
                        f.write(",")
                f.write('\n' + '}')
            print("注册成功！")
    if option == "2":
        username = input("请输入要查询的用户名：")
        print(name_dict.get(username))
    option = input("请输入（1注册，2查询，3退出）：")
